1. Field of the Invention
The present invention relates to a data correction apparatus, a data correction method and a tangible machine-readable medium thereof. More particularly, the present invention relates to a data correction apparatus, a data correction method and a tangible machine-readable medium thereof that use cyclic redundancy check (CRC) information to calculate a correct packet.
2. Descriptions of the Related Art
With the aid of network communications, users are able to exchange information, conduct voice communication or even conduct goods transactions. For this reason, networks have become indispensable in the daily life of modern people. Users can upload or download a wide variety of information via networks, and such information is transmitted via the networks in form of data packets. However, due to the noise in the network data transmission channel or communication interference from other data transmissions underway in the networks, errors or even corruptions usually occur in the data packets when being received at the receiving end, thereby causing degradation in the performance of the network communications.
To improve this problem, network equipment manufacturers have used the cyclic redundancy check (CRC) mechanism that has been practiced for many years. CRC is a kind of error detection mechanism which has found wide application in media access control (MAC) layers of wired and wireless networks. To use the CRC mechanism, a data transmitting end adds, in the data to be transmitted, a CRC remainder to generate a data packet with a CRC code, and then transmits the resulting data packet with the CRC code. When receiving the data packet with the CRC code, the receiving end checks the packet against the CRC code, and if an error is found in the received data packet, the receiving end will abandon the data packet that is determined to be erroneous.
In combination with the aforesaid CRC mechanism for error detection, the receiving end may further employ a retransmission mechanism, e.g., the automatic repeat request (ARQ) or hybrid automatic repeat request (HARQ) framework, to request the transmitting end to retransmit the previously transmitted data packet with the CRC code. In this way, the receiving end can filter out erroneous data packets and acquire the correct data packet through retransmissions, thereby decreasing the error rate of data transmissions in network communications.
Unfortunately, in case the network data transmission channel experiences very poor conditions or suffers from very serious communication interference, the data transmitting end has to retransmit the data packet many times to ensure that the correct data packet has been received without error at the receiving end. This is effective in decreasing the error rate of data transmissions, but wastes network bandwidth resources. Accordingly, decreasing both the error rate of data transmissions and usage of network bandwidth resources at the same time in the network communications is still a problem.